Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
ho un form con impostato BorderStyle = None e vorrei inserire una piccola immagine in basso a destra che consenta (in MouseDown) di ridimensionare il form.
Senti non ti posso dare proprio un codice professionale per farlo, ma a me è venuta in mente una semplice idea
Codice sorgente - presumibilmente VB.NET
PrivateSub PictureBox1_MouseClick(ByVal sender AsObject, ByVal e As System.Windows.Forms.MouseEventArgs)Handles PictureBox1.MouseClick
Timer1.Stop()
'Ferma il timer quando viene rilasciato il tasto
EndSub
PrivateSub PictureBox1_MouseDown(ByVal sender AsObject, ByVal e As System.Windows.Forms.MouseEventArgs)Handles PictureBox1.MouseDown
Timer1.Start()
EndSub
PrivateSub PictureBox1_MouseLeave(ByVal sender AsObject, ByVal e As System.EventArgs)Handles PictureBox1.MouseLeave
Timer1.Stop()
EndSub
PrivateSub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles Timer1.Tick
'Prendono la posizione del mouse corrente X e Y
Dim X = Control.MousePosition.X
Dim Y = Control.MousePosition.Y
Me.Size=New Size(X - Location.X+5, Y - Location.Y+5)
'Ridimensiona la grandezza del form alla posizione del cursore,
'sottrae la sua distanza dal bordo dello schermo e in questo modo
'individua il punto di fine del Form, e aggiunge 5 pixel per non
'far andare fuori il cursorse ma questo è solo un esempio,
'puoi cambiarlo come meglio vuoi
EndSub
L'ho testato e funziona bene, e a dirla tutta mi è venuto in mente adesso, un po' di fantasia, dai Eheh
Ah, il codice che ho dato è solo un esempio, non voglio ricevere critiche per il mio uso del Timer, e di come si poteva fare più professionalmente. - R0gerBlack - 05/05/11 20:07
Mi chiedo xke non possa inserire una risposta [???] - comunque avevo già pensato ad una soluzione simile ma l'immagine che farà ridimensionare è 1024x728px e si trova al posto della ControlBox.. quindi dovrei calcolare anche dove si trova il mouse su quell'immagine per avere un risultato decente.. - bagh3 - 05/05/11 21:26
"ho un form con impostato BorderStyle = None e vorrei inserire una piccola immagine in basso a destra che consenta (in MouseDown) di ridimensionare il form. " E mo mi dici che l'immagine è 1024x768? Beh non so che dirti, dipende da dove vuoi che il mouse sia quando la fa ridimensionare - R0gerBlack - 06/05/11 10:48
@R0gerBlack, si scusa, mi sono spiegato male: l'immagine sostituisce la barra di controllo superiore e tenendo premuto il tasto sinistro e muovendo si muove, mentre col tasto destro si ridimensiona.. cmq ho utilizzato il tuo codice ma l'ho adattato alla mia situazione.. Grazie mille! - bagh3 - 08/05/11 14:15